package com.gugee.ins.common.model.spider.app.media;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.gugee.ins.common.model.spider.app.InsAppImageVersion;
import com.gugee.ins.common.model.spider.app.product.InsAppProductTag;
import lombok.Data;

import java.util.List;

/**
 *
 * @author Huangxin
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class InsAppCarouselMedia {

    @JsonProperty("id")
    private String mid;

    @JsonProperty("media_type")
    private Integer mediaType;

    @JsonProperty("carousel_parent_id")
    private String carouselParentMid;

    @JsonProperty("image_versions2")
    private InsAppImageVersion imageVersions;

    @JsonProperty("video_versions")
    private List<InsAppMediaVideoVersion> videoVersions;

    @JsonProperty("video_duration")
    private double videoDuration;

    private EdgeMediaTaggedUser usertags;

    @JsonProperty("sponsor_tags")
    private List<InsAppMediaSponsorBody> sponsorTags;

    @JsonProperty("product_tags")
    private ProductTags productTags;

    /**
     *
     * @author Huangxin
     */
    @Data
    @JsonIgnoreProperties(ignoreUnknown = true)
    public static class EdgeMediaTaggedUser {
        private List<InsAppMediaTaggedBody> in;
    }

    /**
     *
     * @author Huangxin
     */
    @Data
    @JsonIgnoreProperties(ignoreUnknown = true)
    public static class ProductTags {
        private List<InsAppProductTag> in;
    }
}
